package com.itrencai.d12_Recurtion;

/**
 * 啤酒问题：啤酒两元一瓶，两个空瓶可以换一瓶，四个盖子也可以换一瓶
 * 问10元可以喝多少瓶，剩余多少空瓶和盖子？
 * 答案：15瓶3盖1瓶
 */
public class PiJiu {
    public static int totalNumber;//总数量
    public static int lastBottleNumber;//记录每次剩余的瓶子个数
    public static int lastCoverNumber;//记录每次剩余的盖子个数
    public static void main(String[] args) {
        //1.拿钱买酒
        buy(10);
        System.out.println("总数："+totalNumber);
        System.out.println("剩余盖子数："+lastCoverNumber);
        System.out.println("剩余瓶子数："+lastBottleNumber);

    }

    public static  void buy(int money){
        //2.10元可以买多少酒
        int buyNumber=money/2;
        totalNumber+=buyNumber;

        //3.把盖子和瓶子换成钱
        int coverNumber=lastCoverNumber+buyNumber;
        int bottleNumber=lastBottleNumber+buyNumber ;

        //4.统计可以换算的钱
        int allMoney=0;
        if(coverNumber>=4){
            allMoney+=(coverNumber/4)*2;
        }
        lastCoverNumber=coverNumber%4;
        if(bottleNumber>=2){
            allMoney+=(bottleNumber/2)*2;
        }
        lastBottleNumber=bottleNumber%2;
        if(allMoney>=2){
            buy(allMoney);
        }

    }

}
